Data storage and retrieval systems are used to store information provided by one or more host computer systems. Such data storage and retrieval systems receive requests to write information to one or more secondary storage devices, and requests to retrieve information from those one or more secondary storage devices. Upon receipt of write request, the system stores information received from a host computer in a data cache. In certain implementations, a copy of that information is also stored in a nonvolatile storage device. Upon receipt of a read request, the system recalls information from the one or more secondary storage devices and moves that information to the data cache.
Thus, the system is continuously moving information to and from storage devices, and to and from the data cache. One or more device adapters interconnect the data cache and the information storage devices. Prior art methods to allocate device adapter bandwidth to control the movement of data through such that device adapter by allocating task control blocks. Such prior art methods, however, do not dynamically allocate device adapter bandwidth on the basis of either the utilization of certain nonvolatile storage, or on the ratio of read and write requests.
What is needed is an apparatus and method to dynamically allocate device adapter bandwidth based upon the utilization of the nonvolatile storage and/or the ratio of read and write requests.